O sistema CodeSteer pode aumentar a precisão de grandes modelos de linguagem ao resolver problemas complexos, como agendamento de remessas em uma cadeia de suprimentos.

CodeSteer é um assistente inteligente desenvolvido por pesquisadores do MIT que orienta um LLM a alternar entre geração de código e texto até responder corretamente a uma consulta. Crédito: Christine Daniloff, MIT; iStock
Grandes modelos de linguagem (LLMs) se destacam no uso do raciocínio textual para entender o contexto de um documento e fornecer uma resposta lógica sobre seu conteúdo. Mas esses mesmos LLMs muitas vezes têm dificuldade em responder corretamente até mesmo aos problemas matemáticos mais simples.
O raciocínio textual geralmente é uma forma menos do que ideal de deliberar sobre tarefas computacionais ou algorítmicas. Embora alguns LLMs possam gerar código como Python para lidar com consultas simbólicas, os modelos nem sempre sabem quando usar o código ou que tipo de código funcionaria melhor.
Os LLMs, ao que parece, podem precisar de um coach para orientá-los em direção à melhor técnica.
Conheça o CodeSteer , um assistente inteligente desenvolvido por pesquisadores do MIT que orienta um LLM a alternar entre geração de código e texto até responder corretamente a uma consulta.
O CodeSteer, um LLM menor, gera automaticamente uma série de prompts para direcionar iterativamente um LLM maior. Ele analisa as respostas atuais e anteriores do modelo após cada rodada e fornece orientações sobre como corrigir ou refinar a solução até que a resposta esteja correta.
Os pesquisadores descobriram que complementar um LLM maior com o CodeSteer aumentou sua precisão em tarefas simbólicas, como multiplicar números, jogar Sudoku e empilhar blocos, em mais de 30%. Também permitiu que modelos menos sofisticados superassem modelos mais avançados, com habilidades de raciocínio aprimoradas.
Esse avanço pode melhorar as capacidades de resolução de problemas dos LLMs para tarefas complexas que são especialmente difíceis de resolver apenas com raciocínio textual, como gerar caminhos para robôs em ambientes incertos ou agendar remessas em uma cadeia de suprimentos internacional.
“Há uma corrida para desenvolver modelos cada vez melhores, capazes de fazer tudo, mas adotamos uma abordagem complementar. Pesquisadores passaram anos desenvolvendo tecnologias e ferramentas eficazes para lidar com problemas em diversos domínios. Queremos capacitar os LLMs a selecionar as ferramentas e os métodos certos e a utilizar a expertise de outros para aprimorar suas próprias capacidades”, afirma Chuchu Fan, professor associado de aeronáutica e astronáutica (AeroAstro) e pesquisador principal do Laboratório de Sistemas de Informação e Decisão (LIDS) do MIT.
Fan, autor sênior do estudo, é acompanhado em um artigo sobre o trabalho pelo aluno de pós-graduação do LIDS, Yongchao Chen; pelo aluno de pós-graduação da AeroAstro, Yilun Hao; pelo aluno de pós-graduação da Universidade de Illinois em Urbana-Champaign, Yueying Liu; e pelo cientista de pesquisa do Laboratório de IA Watson do MIT-IBM, Yang Zhang. A pesquisa será apresentada na Conferência Internacional sobre Aprendizado de Máquina.
Um “treinador” de LLM
Pergunte a um LLM qual número é maior, 9,11 ou 9,9, e ele frequentemente dará a resposta errada usando raciocínio textual. Mas peça a ele que use código para responder à mesma pergunta, e ele poderá gerar e executar um script Python para comparar os dois números, resolvendo o problema facilmente.
Inicialmente treinados para compreender e prever a linguagem humana, os LLMs têm maior probabilidade de responder a consultas usando texto, mesmo quando o código seria mais eficaz. E, embora tenham aprendido a gerar código por meio de ajustes finos, esses modelos frequentemente geram uma versão incorreta ou menos eficiente do código.
Em vez de tentar retreinar um LLM poderoso como o GPT-4 ou o Claude para aprimorar essas capacidades, os pesquisadores do MIT ajustam um LLM menor e mais leve para guiar um modelo maior entre texto e código. O ajuste fino de um modelo menor não altera o LLM maior, portanto, não há risco de que isso prejudique as outras capacidades do modelo maior.
“Também fomos inspirados por humanos. No esporte, um treinador pode não ser melhor do que o atleta estrela do time, mas ainda assim pode dar sugestões úteis para orientar o atleta. Esse método de orientação também funciona para LLMs”, diz Chen.
Este instrutor, CodeSteer, trabalha em conjunto com o LLM, que é mais amplo. Ele primeiro analisa uma consulta e determina se texto ou código é adequado para o problema, e qual tipo de código seria o melhor.
Em seguida, ele gera um prompt para o LLM maior, instruindo-o a usar um método de codificação ou raciocínio textual para responder à consulta. O modelo maior segue esse prompt para responder à consulta e envia o resultado de volta ao CodeSteer, que o analisa.
Se a resposta não estiver correta, o CodeSteer continuará solicitando que o LLM tente coisas diferentes que possam corrigir o problema, como incorporar um algoritmo de pesquisa ou restrição em seu código Python, até que a resposta esteja correta.
"Descobrimos que, muitas vezes, o LLM maior tenta ser preguiçoso e usa um código mais curto e menos eficiente, que não carrega o cálculo simbólico correto. Projetamos o CodeSteer para evitar esse fenômeno", diz Chen.
Um verificador simbólico avalia a complexidade do código e envia um sinal ao CodeSteer caso ele seja muito simples ou ineficiente. Os pesquisadores também incorporam um verificador de auto-resposta ao CodeSteer, que solicita ao LLM que gere um código que calcula a resposta para verificar se ela está correta.
Lidando com tarefas complexas
Quando os pesquisadores projetaram o CodeSteer, eles não conseguiram encontrar conjuntos de dados simbólicos adequados para ajustar e testar o modelo, já que muitos benchmarks existentes não indicam se uma determinada consulta poderia ser melhor resolvida com texto ou código.
Assim, eles reuniram um corpus de 37 tarefas simbólicas complexas, incluindo raciocínio espacial, matemática, raciocínio de ordem e otimização, e construíram seu próprio conjunto de dados, chamado SymBench. Eles implementaram uma abordagem de ajuste fino que utiliza o SymBench para maximizar o desempenho do CodeSteer.
Em seus experimentos, o CodeSteer superou todos os nove métodos de base avaliados e aumentou a precisão média de 53,3% para 86,4%. Ele mantém desempenho semelhante mesmo em tarefas não previstas e em uma variedade de LLMs.
Além disso, um modelo de uso geral ampliado com o CodeSteer pode atingir maior precisão do que modelos de última geração projetados para focar em raciocínio e planejamento complexos, exigindo muito menos computação.
“Nosso método utiliza as capacidades próprias de um LLM. Ao aprimorar um LLM com a capacidade de usar codificação de forma inteligente, podemos pegar um modelo que já é muito forte e melhorar ainda mais seu desempenho”, diz Chen.
No futuro, os pesquisadores pretendem otimizar o CodeSteer para acelerar seu processo iterativo de solicitação. Além disso, estão estudando como ajustar com eficácia um modelo unificado com a capacidade de alternar entre raciocínio textual e geração de código, em vez de depender de um assistente separado.
“Os autores apresentam uma solução elegante para o desafio crítico da utilização de ferramentas em LLMs. Este método simples, porém impactante, permite que LLMs de última geração alcancem melhorias significativas de desempenho sem a necessidade de ajustes finos diretos”, afirma Jinsung Yoon, pesquisador científico da equipe do Google Cloud AI, que não participou deste trabalho. “Esta pesquisa representa uma contribuição substancial que promete aprimorar significativamente a aplicação de LLMs a uma gama diversificada de tarefas com as quais eles atualmente têm dificuldades.”
“O sucesso deles em treinar um modelo menor e especializado para guiar estrategicamente modelos maiores e avançados é particularmente impactante”, acrescenta Chi Wang, cientista sênior da equipe do Google DeepMind, que não participou deste trabalho. “Essa colaboração inteligente entre diversos 'agentes' de IA abre caminho para aplicações mais robustas e versáteis em cenários complexos do mundo real.”
Esta pesquisa é apoiada, em parte, pelo Escritório de Pesquisa Naval dos EUA e pelo Laboratório de IA Watson do MIT-IBM.